﻿namespace AutoRevit.Entry.Command;

/// <summary>
/// Autodesk.Revit.UI.ExternalCommandData 的内容数据
/// </summary>
public interface IRevitData
{
    /// <summary>
    /// Autodesk.Revit.UI
    /// </summary>
    ExternalCommandData CommandData { get; }

    /// <summary>
    /// Autodesk.Revit.DB.Document
    /// </summary>
    Document Doc { get; }

    /// <summary>
    /// Autodesk.Revit.DB.ElementSet
    /// </summary>
    ElementSet ElementSet { get; }

    /// <summary>
    /// Autodesk.Revit.UI.UIApplication
    /// </summary>
    UIApplication UIApp { get; }

    /// <summary>
    /// Autodesk.Revit.UI.UIDocument
    /// </summary>
    UIDocument UIDoc { get; }

    /// <summary>
    /// 命令执行结束返回的消息内容
    /// </summary>
    string? ResultMessage { get; set; }

    /// <summary>
    /// 创建时间
    /// </summary>
    DateTimeOffset CreateTime { get; }
}
